home *** CD-ROM | disk | FTP | other *** search
/ Computer Shopper 235 / Issue 235 - September 2007 - DPCS0907DVD.ISO / Extras / NetObjects Fusion / NOF10.exe / data1.cab / FSI / lib / nof / dataobjects / OutputSettingsMgr.js < prev    next >
Encoding:
JavaScript  |  2007-04-11  |  2.8 KB  |  92 lines

  1. /** Class OutputSettingsMgr
  2. Description : Implements the OutputSettings data collection
  3. */
  4. function NOF_OutputSettingsMgr() {
  5.   this.__proto__ = NOF_OutputSettingsMgr.prototype;
  6.   this.SUPER();
  7. }
  8. NOF_OutputSettingsMgr.inherits( NOF.DataCollection );
  9. function NOF_OutputSettingsMgr_ProtoBuilder () {  
  10.   var method = NOF_OutputSettingsMgr.prototype;
  11.   method.load = function load() {    
  12.     var osNamesList = (new NOF.ImageOutputSettings()).getConfigFiles();
  13.     for ( var i=0; i < osNamesList.length; i++ ) {
  14.       this.addElementToList (osNamesList[i]);
  15.     }
  16.     // add default elem    
  17.     var defSettings = new NOF.ImageOutputSettings();
  18.     defSettings.configModuleType = NOF_OSConstants.MODULETYPE;
  19.     var osNamesList = defSettings.getConfigFiles();
  20.     for ( var i=0; i < osNamesList.length; i++ ) {
  21.       this.addElementToList (osNamesList[i], true);
  22.     }
  23.   }
  24.  
  25.   method.save = function save() {
  26.   }
  27.  
  28.   method.update = function update (list) {
  29.     var newList = new Array (list.length);
  30.     for (var i=0;i<list.length;i++) {
  31.       newList[i] = this.getElementByName (list[i]);
  32.     }
  33.     this.setListElements (newList);
  34.     this.selected = null;
  35.     this.selectedIndex = -1;
  36.   }
  37.  
  38.   method.getListElements = function getListElements () {
  39.     var listForSelect = null;
  40.     if (!this.isEmpty()) {
  41.       listForSelect = new Array(this.size());
  42.       for (var i=0;i<this.size();i++) {
  43.         listForSelect[i] = this.get(i).getName();
  44.       }
  45.     }
  46.     return listForSelect;
  47.   }
  48.  
  49.   method.getNewElement = function getNewElement(id) {
  50.     var name = arguments[1][0];    
  51.     var imgOS = new NOF.ImageOutputSettings();
  52.     if (arguments[1][1])
  53.       imgOS.configModuleType = NOF_OSConstants.MODULETYPE;
  54.     imgOS.loadConfigFile(name);
  55.     return imgOS;
  56.   }
  57.  
  58.   method.getElementByName = function getElementByName (name) {
  59.     for (var i=0;i<this.size();i++) {
  60.       if (this.get(i).getName() == name) {
  61.         return this.get(i);
  62.       }
  63.     }
  64.   }
  65.  
  66.   method.setSelectedByName = function setSelectedByName (name) {
  67.     for (var i=0;i<this.size();i++) {
  68.       if (this.get(i).getName() == name) {
  69.         this.setSelectedByIndex (i);
  70.         break;
  71.       }
  72.     }
  73.   }
  74.  
  75.   method.getNameIfElemInList = function getNameIfElemInList (elem) {
  76.     var elemFormat = elem.getFormat().toLowerCase();
  77.     if (elemFormat == "jpeg" || elemFormat == "jpg")
  78.       elemFormat = "jpeg";
  79.     for (var i=0;i<this.size();i++) {
  80.       var format = this.get(i).getFormat().toLowerCase();
  81.       if (format == "jpeg" || format == "jpg")
  82.         format = "jpeg";
  83.       if ( format == elemFormat && this.get(i).getQuality() == elem.getQuality())
  84.         return this.get(i).getName();
  85.     }
  86.     return "";
  87.   }  
  88. }
  89.  
  90. NOF_OutputSettingsMgr_ProtoBuilder ();
  91. NOF.__proto__.OutputSettingsMgr = NOF_OutputSettingsMgr;
  92.